Code review sweep (run 25152152525)#18440
Merged
Merged
Conversation
Automated code review of instrumentation/internal/internal-lambda/javaagent.
Automated code review of instrumentation/internal/internal-reflection/javaagent-integration-tests.
Automated code review of instrumentation/java-http-client/javaagent.
Automated code review of instrumentation/java-http-client/library.
Automated code review of instrumentation/java-http-client/testing.
Automated code review of instrumentation/java-http-server/library.
Automated code review of instrumentation/java-util-logging/javaagent.
Automated code review of instrumentation/jaxrs-client/jaxrs-client-2.0-testing.
trask
approved these changes
Apr 30, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automated code review sweep walked the following modules in order
and stopped after accumulating at least 10 modified files:
internal-eclipse-osgi-3.6:javaagentinternal-lambda:javaagentinternal-reflection:javaagentinternal-reflection:javaagent-integration-testsinternal-url-class-loader:javaagentinternal-url-class-loader:javaagent-integration-testsjava-http-client:javaagentjava-http-client:libraryjava-http-client:testingjava-http-server:javaagentjava-http-server:libraryjava-http-server:testingjava-util-logging:javaagentjava-util-logging:shaded-stub-for-instrumentingjavalin-5.0:javaagentjavalin-7.0:javaagentjavalin:testingjaxrs-client:jaxrs-client-1.1-testingjaxrs-client:jaxrs-client-2.0-testingModule:
internal-eclipse-osgi-3.6:javaagentModule path:
instrumentation/internal/internal-eclipse-osgi-3.6/javaagentSummary
No safe repository-guideline fixes were found under
instrumentation/internal/internal-eclipse-osgi-3.6/javaagent; no files changed.Applied Changes
No safe automated changes were applied.
Module:
internal-lambda:javaagentModule path:
instrumentation/internal/internal-lambda/javaagentSummary
Applied and committed one safe repository-guideline fix for
internal-lambdajavaagent.Applied Changes
Build
File:
build.gradle.kts:6Change: Removed the explicit production `compileOnly(project(":javaagent-bootstrap"))` dependency.
Reason: `gradle-conventions.md` says javaagent modules must not declare `javaagent-bootstrap` explicitly because `otel.javaagent-instrumentation` already provides it on the compile-only classpath.
Module:
internal-reflection:javaagentModule path:
instrumentation/internal/internal-reflection/javaagentSummary
No safe repository-guideline fixes were needed for
instrumentation/internal/internal-reflection/javaagent; the scoped files and parentmetadata.yamldid not reveal deterministic issues to change.Applied Changes
No safe automated changes were applied.
Module:
internal-reflection:javaagent-integration-testsModule path:
instrumentation/internal/internal-reflection/javaagent-integration-testsSummary
Applied safe style fixes in 2 files under
instrumentation/internal/internal-reflection/javaagent-integration-tests: madeTestClasspackage-private and aligned the generatedserialVersionUIDassertion.Applied Changes
Style
File:
TestClass.java:10Change: Changed `TestClass` from `public` to package-private.
Reason: Repository style guide requires minimal necessary visibility, and test classes/helpers should generally be package-protected when no wider visibility is needed.
Testing
File:
ReflectionTest.java:45Change: Updated the expected generated `serialVersionUID` for `TestClass`.
Reason: Changing class visibility changes the default generated `serialVersionUID`; the test assertion must stay aligned with the class signature after the visibility fix.
Module:
internal-url-class-loader:javaagentModule path:
instrumentation/internal/internal-url-class-loader/javaagentSummary
No safe repository-guideline fixes were applied under
instrumentation/internal/internal-url-class-loader/javaagent; the reviewedbuild.gradle.kts,UrlClassLoaderInstrumentation, andUrlClassLoaderInstrumentationModulealready match the applicable internal javaagent, advice, metadata, and Gradle conventions.Applied Changes
No safe automated changes were applied.
Module:
internal-url-class-loader:javaagent-integration-testsModule path:
instrumentation/internal/internal-url-class-loader/javaagent-integration-testsSummary
No safe repository-guideline fixes were applied under
instrumentation/internal/internal-url-class-loader/javaagent-integration-tests. The reviewed files already conform to the applicable style, javaagent, Gradle, testing, andmetadata.yamlguidance for this scope.Applied Changes
No safe automated changes were applied.
Module:
java-http-client:javaagentModule path:
instrumentation/java-http-client/javaagentSummary
Applied one safe repository-guideline fix and committed it in
5b086723: added the missing declarative config key inmetadata.yaml.Applied Changes
Config
File:
metadata.yaml:26Change: Added `declarative_name: java.common.peer_service_mapping` for `otel.instrumentation.common.peer-service-mapping`.
Reason: `metadata-yaml-format.md` requires configuration entries to include the matching declarative name; the standard `otel.instrumentation.*` conversion maps this property to `java.common.peer_service_mapping`, consistent with comparable instrumentation metadata.
Module:
java-http-client:libraryModule path:
instrumentation/java-http-client/librarySummary
Applied one safe repository-guideline fix in
instrumentation/java-http-client/libraryand committed it.Applied Changes
Nullability
File:
ResponseConsumer.java:34Change: Annotated `ResponseConsumer.accept(...)` parameters with `@Nullable`.
Reason: `CompletableFuture.whenComplete` can call `BiConsumer.accept(...)` with a `null` response or `null` throwable, and repository nullability rules require annotating parameters that can receive `null`; `Instrumenter.end(...)` already accepts nullable response and error arguments.
Module:
java-http-client:testingModule path:
instrumentation/java-http-client/testingSummary
Applied one safe testing-guideline fix under
instrumentation/java-http-client/testingand committed it as3c350c63.Applied Changes
Testing
File:
AbstractJavaHttpClientTest.java:177Change: Replaced the `cancelRequest()` client-span assertion with `hasAttributesSatisfyingExactly(...)` and added the conditional `maybeStablePeerService()` expectation for javaagent spans.
Reason: Repository testing guidance prefers `hasAttributesSatisfyingExactly(...)` because non-exact attribute assertions silently ignore unexpected attributes; mode-dependent assertions should use shared semconv helpers and `null` for absent attributes.
Module:
java-http-server:javaagentModule path:
instrumentation/java-http-server/javaagentSummary
No safe repository-guideline fixes were applied after reviewing
instrumentation/java-http-server/javaagentand the required parentmetadata.yaml.Applied Changes
No safe automated changes were applied.
Module:
java-http-server:libraryModule path:
instrumentation/java-http-server/librarySummary
Applied one safe repository-guideline fix and committed it in
a1d46d1c.Applied Changes
Config
File:
metadata.yaml:26Change: Added `declarative_name: java.common.peer_service_mapping` for `otel.instrumentation.common.peer-service-mapping`.
Reason: `metadata-yaml-format.md` requires each metadata configuration entry to include a matching `declarative_name`; peer-service mapping entries use `java.common.peer_service_mapping` elsewhere in the repository.
Module:
java-http-server:testingModule path:
instrumentation/java-http-server/testingSummary
No safe fixes were applied to files under
instrumentation/java-http-server/testing; the reviewed target files already matched the applicable repository review guidelines. Mandatory module metadata validation found one parentmetadata.yamlissue outside the requested directory scope.Applied Changes
No safe automated changes were applied.
Unresolved Items
File:
metadata.yamlReason: `declarative_name` for `otel.instrumentation.common.peer-service-mapping` is `java.common.peer_service_mapping`, but the bridge and runtime resolver use `java.common.service_peer_mapping`; this parent metadata file is outside the requested `instrumentation/java-http-server/testing` review path.
Module:
java-util-logging:javaagentModule path:
instrumentation/java-util-logging/javaagentSummary
Applied safe repository-guideline fixes under
instrumentation/java-util-logging/javaagentand committed them in5f8efd5a.Applied Changes
Build
File:
build.gradle.kts:5Change: Removed the explicit `compileOnly(project(":javaagent-bootstrap"))` dependency.
Reason: `gradle-conventions.md` says javaagent modules must not declare `javaagent-bootstrap` explicitly because `otel.javaagent-instrumentation` already provides it on the compile classpath.
Testing
File:
JavaUtilLoggingTest.java:35Change: Renamed the experimental flag field from `isExperimentalAttributesEnabled` to `EXPERIMENTAL_ATTRIBUTES` and updated its usages.
Reason: `testing-experimental-flags.md` says module experimental flags should be hoisted into a per-class `private static final boolean EXPERIMENTAL_ATTRIBUTES` constant.
Module:
java-util-logging:shaded-stub-for-instrumentingModule path:
instrumentation/java-util-logging/shaded-stub-for-instrumentingSummary
No safe fixes were applied. All target files are under
instrumentation/java-util-logging/shaded-stub-for-instrumenting, and the review guideline requires skippingshaded-stub-for-instrumenting/modules because they are minimal stand-ins for external library classes.Applied Changes
No safe automated changes were applied.
Module:
javalin-5.0:javaagentModule path:
instrumentation/javalin/javalin-5.0/javaagentSummary
No safe repository-guideline fixes were needed for
instrumentation/javalin/javalin-5.0/javaagent; the scoped files andmetadata.yamlalready conform to the loaded review rules.Applied Changes
No safe automated changes were applied.
Module:
javalin-7.0:javaagentModule path:
instrumentation/javalin/javalin-7.0/javaagentSummary
No safe repository-guideline fixes were needed under
instrumentation/javalin/javalin-7.0/javaagent;metadata.yamlhas no config entries requiring declarative validation changes.Applied Changes
No safe automated changes were applied.
Module:
javalin:testingModule path:
instrumentation/javalin/testingSummary
No safe repository-guideline fixes were needed under
instrumentation/javalin/testing; the scoped files already matched the applicable style, testing, Gradle, and metadata review guidance.Applied Changes
No safe automated changes were applied.
Module:
jaxrs-client:jaxrs-client-1.1-testingModule path:
instrumentation/jaxrs-client/jaxrs-client-1.1-testingSummary
No safe repository-guideline fixes were found in
instrumentation/jaxrs-client/jaxrs-client-1.1-testing; no files were changed.Applied Changes
No safe automated changes were applied.
Module:
jaxrs-client:jaxrs-client-2.0-testingModule path:
instrumentation/jaxrs-client/jaxrs-client-2.0-testingSummary
Applied safe style-guideline fixes in
jaxrs-client-2.0-testingand committed them as488958ad.Applied Changes
Style
File:
ResteasyProxyClientTest.java:62Change: Updated `ResteasyProxyResource` call sites from snake_case method names like `get_success()` to lower camel case names like `getSuccess()`.
Reason: The repository style guide follows Google Java Style, which uses lower camel case for Java method names; updating call sites keeps the rename compile-ready.
File:
ResteasyProxyResource.java:20Change: Renamed RESTEasy proxy interface methods from snake_case (`get_error()`, `post_success()`, etc.) to lower camel case (`getError()`, `postSuccess()`, etc.).
Reason: The repository style guide follows Google Java Style, which uses lower camel case for Java method names.
Download code review diagnostics